/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.intercoop_abroad.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 学生赴境外学习交流Entity
 * @author hang
 * @version 2017-01-14
 */
public class TbIntercoopAbroad extends DataEntity<TbIntercoopAbroad> {
	
	private static final long serialVersionUID = 1L;
	private String name;		// 姓名
	private String major;		// 专业
	private Date leaveTime;		// 出境时间
	private Date returnTime;		// 回国时间
	private String country;		// 国家和地区
	private String object;		// 单位
	private String fundKind;		// 主要资助类别
	private String fundMoney;		// 资助金额
	private String cooperationGoal;		// 国际交流项目名称或主要交流目的
	private Date createTime;		// 创建时间
	private Date updateTime;		// 更新时间
	
	public TbIntercoopAbroad() {
		super();
	}

	public TbIntercoopAbroad(String id){
		super(id);
	}

	@Length(min=0, max=20, message="姓名长度必须介于 0 和 20 之间")
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	@Length(min=0, max=64, message="专业长度必须介于 0 和 64 之间")
	public String getMajor() {
		return major;
	}

	public void setMajor(String major) {
		this.major = major;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getLeaveTime() {
		return leaveTime;
	}

	public void setLeaveTime(Date leaveTime) {
		this.leaveTime = leaveTime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getReturnTime() {
		return returnTime;
	}

	public void setReturnTime(Date returnTime) {
		this.returnTime = returnTime;
	}
	
	@Length(min=0, max=64, message="国家和地区长度必须介于 0 和 64 之间")
	public String getCountry() {
		return country;
	}

	public void setCountry(String country) {
		this.country = country;
	}
	
	@Length(min=0, max=64, message="单位长度必须介于 0 和 64 之间")
	public String getObject() {
		return object;
	}

	public void setObject(String object) {
		this.object = object;
	}
	
	@Length(min=0, max=64, message="主要资助类别长度必须介于 0 和 64 之间")
	public String getFundKind() {
		return fundKind;
	}

	public void setFundKind(String fundKind) {
		this.fundKind = fundKind;
	}
	
	@Length(min=0, max=20, message="资助金额长度必须介于 0 和 20 之间")
	public String getFundMoney() {
		return fundMoney;
	}

	public void setFundMoney(String fundMoney) {
		this.fundMoney = fundMoney;
	}
	
	@Length(min=0, max=64, message="国际交流项目名称或主要交流目的长度必须介于 0 和 64 之间")
	public String getCooperationGoal() {
		return cooperationGoal;
	}

	public void setCooperationGoal(String cooperationGoal) {
		this.cooperationGoal = cooperationGoal;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	
}